package data_structure;

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;

public class leetcode_0114 {
    public void flatten(TreeNode root) {
        List<Integer> list=new LinkedList<>();
        if(root==null) return;
        dp(list,root);
        int len=list.size();
        TreeNode node=root;
        for(int i=0;i<len-1;++i){
            node.left=null;
            node.val=list.get(i);
            node.right=new TreeNode();
            node=node.right;
        }
        node.left=null;
        node.val=list.get(len-1);
    }
    public void dp(List<Integer> list,TreeNode node){
        list.add(node.val);
        if(node.left!=null) dp(list,node.left);
        if(node.right!=null) dp(list,node.right);
    }
}
